﻿using SqlSugar;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json.Serialization;
using System.Web;
 

namespace VM.Entity.EntityDto.Invoice
{
    /// <summary>
    /// 订单信息表
    /// </summary>
    public class invoiceApllyReqOrderDto
    {
        #region Model
        private int? _id;
        private string _buyername;
        private string _buyertaxnum;
        private string _buyertel;
        private string _buyeraddress;
        private string _buyeraccount;
        private string _salertaxnum;
        private string _salertel;
        private string _saleraddress;
        private string _saleraccount;
        private string _showbankaccounttype = "0";
        private string _orderno;
        private string _invoicedate;
        private string _invoicecode;
        private string _invoicenum;
        private string _redreason;
        private string _billinfono;
        private string _departmentid;
        private string _clerkid;
        private string _remark;
        private string _checker;
        private string _payee;
        private string _showcheckertype;

        private string _clerk;
        private string _listflag;
        private string _listname;
        private string _pushmode;
        private string _buyerphone;
        private string _email;
        private string _ccphone;
        private string _ccemail;
        private string _invoicetype = "1";
        private string _invoiceline;
        private string _paperinvoicetype;
        private string _specificfactor = "0";
        private string _forceflag;
        private string _proxyinvoiceflag;
        private string _taxrebateproxy = "0";
        private string _invoicedifferencetype;
        private string _callbackurl;
        private string _extensionnumber;
        private string _terminalnumber;
        private string _machinecode;
        private string _vehicleflag;
        private string _hiddenbmbbbh = "0";
        private string _nextinvoicenum;
        private string _nextinvoicecode;
        private string _invoicenumend;
        private string _surveyanswertype;
        private string _buyermanagername;
        private string _managercardtype;
        private string _managercardno;
        private string _bfield1;
        private string _bfield2;
        private string _bfield3;
        private string _naturalpersonflag;
        private string _certificatetype;
        private string _taxnumverifyflag;
        private string _naturalpersonverifyflag;
        private string _additionalelementname;
        private int? _clientid;
        private string _clientinfo;
        private string _description;
        private int? _createuserid;
        private DateTime? _createdate;
        private int? _updateuserid;
        private DateTime? _updatedate;
        /// <summary>
        /// 内码
        /// </summary>
        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, IsOnlyIgnoreInsert = true)]
        [JsonIgnore]
        public int? id
        {
            set { _id = value; }
            get { return _id; }
        }
        [JsonIgnore]
        public int parentId { get; set; }

        /// <summary>
        /// 	购方名称 必录  示例值：企业名称/个人 最大长度 100
        /// </summary>
        public string buyerName
        {
            set { _buyername = value; }
            get { return _buyername; }
        }
        /// <summary>
        /// 购方税号（企业要填，个人可为空；数电专票、二手车销售统一发票时必填） 
        /// </summary>
        public string? buyerTaxNum
        {
            set { _buyertaxnum = value; }
            get { return _buyertaxnum; }
        }
        /// <summary>
        /// 购方电话（购方地址+电话总共不超100字符；二手车销售统一发票时必填
        /// </summary>
        public string? buyerTel
        {
            set { _buyertel = value; }
            get { return _buyertel; }
        }
        /// <summary>
        /// 购方地址（购方地址+电话总共不超100字符；二手车销售统一发票时必填）
        /// </summary>
        public string? buyerAddress
        {
            set { _buyeraddress = value; }
            get { return _buyeraddress; }
        }
        /// <summary>
        /// 购方银行开户行及账号
        /// </summary>
        public string? buyerAccount
        {
            set { _buyeraccount = value; }
            get { return _buyeraccount; }
        }
        /// <summary>
        /// 销方税号（使用沙箱环境请求时消息体参数salerTaxNum和消息头参数userTax填写339902999999789113）必录
        /// </summary>
        public string salerTaxNum
        {
            set { _salertaxnum = value; }
            get { return _salertaxnum; }
        }
        /// <summary>
        /// 销方电话（在诺税通saas工作台配置过的可以不传，以传入的为准）必录
        /// </summary>
        public string salerTel
        {
            set { _salertel = value; }
            get { return _salertel; }
        }
        /// <summary>
        /// 	销方地址（在诺税通saas工作台配置过的可以不传，以传入的为准）必录
        /// </summary>
        public string salerAddress
        {
            set { _saleraddress = value; }
            get { return _saleraddress; }
        }
        /// <summary>
        /// 销方银行开户行及账号(二手车销售统一发票时必填)
        /// </summary>
        [JsonIgnore]
        public string? salerAccount
        {
            set { _saleraccount = value; }
            get { return _saleraccount; }
        }
        /// <summary>
        /// 不传默认为0：都不显示；传1：备注仅显示销方开户行及账号；传2：备注仅显示购方开户行及账号；传3：购销方开户行及账号都显示（此字段仅在数电普票和数电专票下生效）
        /// </summary>
        public string? showBankAccountType
        {
            set { _showbankaccounttype = value; }
            get { return _showbankaccounttype; }
        }
        /// <summary>
        /// 订单号（每个企业唯一） 必录
        /// </summary>
        public string orderNo
        {
            set { _orderno = value; }
            get { return _orderno; }
        }
        /// <summary>
        /// 订单时间 必录
        /// </summary>
        public string invoiceDate
        {
            set { _invoicedate = value; }
            get { return _invoicedate; }
        }
        /// <summary>
        /// 冲红时填写的对应蓝票发票代码（红票必填 10位或12 位， 11位的时候请左补 0）
        /// </summary>
        [JsonIgnore]
        public string? invoiceCode
        {
            set { _invoicecode = value; }
            get { return _invoicecode; }
        }
        /// <summary>
        /// 冲红时填写的对应蓝票发票号码（红票必填，不满8位请左补0）
        /// </summary>
        [JsonIgnore]
        public string? invoiceNum
        {
            set { _invoicenum = value; }
            get { return _invoicenum; }
        }
        /// <summary>
        /// 冲红原因：1:销货退回;2:开票有误;3:服务中止;4:发生销售折让(开具红票时且票种为p,c,e,f,r需要传--成品油发票除外；不传时默认为 1)
        /// </summary>
        [JsonIgnore]
        public string? redReason
        {
            set { _redreason = value; }
            get { return _redreason; }
        }
        /// <summary>
        /// 红字信息表编号.专票冲红时此项必填，且必须在备注中注明“开具红字增值税专用发票信息表编号ZZZZZZZZZZZZZZZZ”字样，其 中“Z”为开具红字增值税专用发票所需要的长度为16位信息表编号（建议16位，最长可支持24位）。
        /// </summary>
        [JsonIgnore]
        public string? billInfoNo
        {
            set { _billinfono = value; }
            get { return _billinfono; }
        }
        /// <summary>
        /// 部门门店id（诺诺系统中的id）
        /// </summary>
        public string departmentId
        {
            set { _departmentid = value; }
            get { return _departmentid; }
        }
        /// <summary>
        /// 开票员id（诺诺系统中的id）
        /// </summary>
        public string? clerkId
        {
            set { _clerkid = value; }
            get { return _clerkid; }
        }

        /// <summary>
        /// 冲红时，在备注中注明“对应正数发票代码:XXXXXXXXX号码:YYYYYYYY”文案，其中“X”为发票代码，“Y”为发票号码，可以不填，接口会自动添加该文案；机动车发票蓝票时备注只能为空；数电票时最长为200字符
        /// </summary>
        [JsonIgnore]
        public string? remark
        {
            set { _remark = value; }
            get { return _remark; }
        }
        /// <summary>
        /// 复核人（数电电票时若有值，会显示在生成的PDF/OFD备注栏中）
        /// </summary>
        public string? checker
        {
            set { _checker = value; }
            get { return _checker; }
        }
        /// <summary>
        /// 	收款人（数电电票时若有值，会显示在生成的PDF/OFD备注栏中）
        /// </summary>
        public string? payee
        {
            set { _payee = value; }
            get { return _payee; }
        }
        /// <summary>
        /// 数电电票是否展示收款人和复核人，0：不显示 1：显示
        /// </summary>
        public string? showCheckerType
        {
            set { _showcheckertype = value; }
            get { return _showcheckertype; }
        }
        /// <summary>
        /// 开票员（数电票时需要传入和开票登录账号对应的开票员姓名）
        /// </summary>
        public string? clerk
        {
            set { _clerk = value; }
            get { return _clerk; }
        }
        /// <summary>
        /// 清单标志：非清单:0；清单:1，默认:0，电票固定为0
        /// </summary>
        public string? listFlag
        {
            set { _listflag = value; }
            get { return _listflag; }
        }
        /// <summary>
        /// 清单项目名称：对应发票票面项目名称（listFlag为1时，必填，默认为“详见销货清单”）
        /// </summary>
        public string? listName
        {
            set { _listname = value; }
            get { return _listname; }
        }
        /// <summary>
        /// 推送方式：-1,不推送;0,邮箱;1,手机（默认）;2,邮箱、手机 必录
        /// </summary>
        public string pushMode
        {
            set { _pushmode = value; }
            get { return _pushmode; }
        }
        /// <summary>
        /// 购方手机（pushMode为1或2时，此项为必填，同时受企业资质是否必填控制）
        /// </summary>
        public string buyerPhone
        {
            set { _buyerphone = value; }
            get { return _buyerphone; }
        }
        /// <summary>
        /// 推送邮箱（pushMode为0或2时，此项为必填，同时受企业资质是否必填控制）
        /// </summary>
        public string email
        {
            set { _email = value; }
            get { return _email; }
        }
        /// <summary>
        /// 抄送手机，多个时用英文逗号隔开，最多支持5个，必须在phone字段有值时，才支持传入
        /// </summary>
        public string? ccPhone
        {
            set { _ccphone = value; }
            get { return _ccphone; }
        }
        /// <summary>
        /// 	抄送邮箱，多个时用英文逗号隔开，最多支持5个，必须在email字段有值时，才支持传入
        /// </summary>
        public string? ccEmail
        {
            set { _ccemail = value; }
            get { return _ccemail; }
        }
        /// <summary>
        /// 	开票类型：1:蓝票;2:红票 （数电票冲红请对接数电快捷冲红接口）必录
        /// </summary>

        public string invoiceType
        {
            set { _invoicetype = value; }
            get { return _invoicetype; }
        }
        /// <summary>
        /// 发票种类：p,普通发票(电票)(默认);c,普通发票(纸票);s,专用发票;e,收购发票(电票);f,收购发票(纸质);r,普通发票(卷式);b,增值税电子专用发票;j,机动车销售统一发票;u,二手车销售统一发票;bs:电子发票(增值税专用发票)-即数电专票(电子),pc:电子发票(普通发票)-即数电普票(电子),es:数电纸质发票(增值税专用发票)-即数电专票(纸质);ec:数电纸质发票(普通发票)-即数电普票(纸质)
        /// </summary>
        public string invoiceLine
        {
            set { _invoiceline = value; }
            get { return _invoiceline; }
        }
        /// <summary>
        /// 数电纸票类型(数电纸票时才需要传)：（票种为ec时，默认04；票种为es时，默认为1130）; 04 2016版增值税普通发票（二联折叠票）, 05 2016版增值税普通发票（五联折叠票), 000008101200 2008版增值税普票（二联），000008101500 2008版增值税普票（五联），1130 增值税专用发票（中文三联无金额限制版）, 1140 增值税专用发票（中文四联无金额限制版）, 1160 增值税专用发票（中文六联无金额限制版）, 1170 增值税专用发票（中文七联无金额限制版）
        /// </summary>
        public string? paperInvoiceType
        {
            set { _paperinvoicetype = value; }
            get { return _paperinvoicetype; }
        }
        /// <summary>
        /// 特定要素：0普通发票（默认）、1 成品油 、2 稀土（仅支持s、bs票种且编码必须为稀土产品目录中的商品）、3 建筑服务、4 货物运输服务、5 不动产销售、6 不动产经营租赁服务、9 旅客运输服务、12 自产农产品销售、16 农产品收购、31 建安发票 、 32 房地产销售发票、33 二手车发票反向开具、 34 电子烟、 35 矿产品
        /// </summary>
        public string? specificFactor
        {
            set { _specificfactor = value; }
            get { return _specificfactor; }
        }
        /// <summary>
        /// 是否强制开具标识：0 否、1 是 （发票种类为u，且特定要素为 33-二手车发票反向开具时才需要填； 默认为 0；若为1时，则不校验卖方自然人身份证号的合规性）
        /// </summary>
        public string? forceFlag
        {
            set { _forceflag = value; }
            get { return _forceflag; }
        }
        /// <summary>
        /// 代开标志：0非代开;1代开。代开蓝票时备注要求填写文案：代开企业税号:***,代开企业名称:***；代开红票时备注要求填写文案：对应正数发票代码:***号码:***代开企业税号:***代开企业名称:***
        /// </summary>
        public string? proxyInvoiceFlag
        {
            set { _proxyinvoiceflag = value; }
            get { return _proxyinvoiceflag; }
        }
        /// <summary>
        /// 代办退税标记：0否（默认），1是；仅代办退税资质企业可传1
        /// </summary>
        public string? taxRebateProxy
        {
            set { _taxrebateproxy = value; }
            get { return _taxrebateproxy; }
        }
        /// <summary>
        /// 数电发票差额征税开具方式：01 全额开票，02 差额开票；非数电发票开具差额时，不传
        /// </summary>
        public string? invoiceDifferenceType
        {
            set { _invoicedifferencetype = value; }
            get { return _invoicedifferencetype; }
        }
        /// <summary>
        /// 回传发票信息地址（开票完成、开票失败）
        /// </summary>
        public string? callBackUrl
        {
            set { _callbackurl = value; }
            get { return _callbackurl; }
        }
        /// <summary>
        /// 分机号（只能为空或者数字
        /// </summary>

        public string? extensionNumber
        {
            set { _extensionnumber = value; }
            get { return _extensionnumber; }
        }
        /// <summary>
        /// 终端号（开票终端号，只能 为空或数字）
        /// </summary>
        public string? terminalNumber
        {
            set { _terminalnumber = value; }
            get { return _terminalnumber; }
        }
        /// <summary>
        /// 机器编号（12位盘号）
        /// </summary>
        public string? machineCode
        {
            set { _machinecode = value; }
            get { return _machinecode; }
        }
        /// <summary>
        /// 是否机动车类专票 0-否 1-是
        /// </summary>
        public string? vehicleFlag
        {
            set { _vehicleflag = value; }
            get { return _vehicleflag; }
        }
        /// <summary>
        /// 是否隐藏编码表版本号 0-否 1-是（默认0，在企业资质中也配置为是隐藏的时候，并且此字段传1的时候代开发票 税率显示***）
        /// </summary>
        public string? hiddenBmbbbh
        {
            set { _hiddenbmbbbh = value; }
            get { return _hiddenbmbbbh; }
        }
        /// <summary>
        /// 指定发票代码（票种为c普纸、f收购纸票时允许指定卷开具） 非必填
        /// </summary>
        public string? nextInvoiceNum
        {
            set { _nextinvoicenum = value; }
            get { return _nextinvoicenum; }
        }
        /// <summary>
        /// 发票起始号码，当指定代码有值时，发票起始号码必填
        /// </summary>
        public string? nextInvoiceCode
        {
            set { _nextinvoicecode = value; }
            get { return _nextinvoicecode; }
        }
        /// <summary>
        /// 发票终止号码，当指定代码有值时，发票终止号码必填
        /// </summary>
        public string? invoiceNumEnd
        {
            set { _invoicenumend = value; }
            get { return _invoicenumend; }
        }
        /// <summary>
        /// 3%、1%税率开具理由（企业为小规模/点下户时才需要），对应值：1-开具发票为2022年3月31日前发生纳税义务的业务； 2-前期已开具相应征收率发票，发生销售折让、中止或者退回等情形需要开具红字发票，或者开票有误需要重新开具； 3-因为实际经营业务需要，放弃享受免征增值税政策
        /// </summary>
        public string? surveyAnswerType
        {
            set { _surveyanswertype = value; }
            get { return _surveyanswertype; }
        }
        /// <summary>
        /// 购买方经办人姓名（数电票特有字段）
        /// </summary>
        public string? buyerManagerName
        {
            set { _buyermanagername = value; }
            get { return _buyermanagername; }
        }
        /// <summary>
        /// 经办人证件类型：101-组织机构代码证, 102-营业执照, 103-税务登记证, 199-其他单位证件, 201-居民身份证, 202-军官证, 203-武警警官证, 204-士兵证, 205-军队离退休干部证, 206-残疾人证, 207-残疾军人证（1-8级）, 208-外国护照, 210-港澳居民来往内地通行证, 212-中华人民共和国往来港澳通行证, 213-台湾居民来往大陆通行证, 214-大陆居民往来台湾通行证, 215-外国人居留证, 216-外交官证 299-其他个人证件(数电发票特有)
        /// </summary>
        public string? managerCardType
        {
            set { _managercardtype = value; }
            get { return _managercardtype; }
        }
        /// <summary>
        /// 经办人证件号码（数电票特有字段）
        /// </summary>
        public string? managerCardNo
        {
            set { _managercardno = value; }
            get { return _managercardno; }
        }
        /// <summary>
        /// 业务方自定义字段1，本应用只作保存
        /// </summary>
        public string? bField1
        {
            set { _bfield1 = value; }
            get { return _bfield1; }
        }
        /// <summary>
        /// 业务方自定义字段2，本应用只作保存
        /// </summary>
        public string? bField2
        {
            set { _bfield2 = value; }
            get { return _bfield2; }
        }
        /// <summary>
        /// 业务方自定义字段3，本应用只作保存
        /// </summary>
        public string? bField3
        {
            set { _bfield3 = value; }
            get { return _bfield3; }
        }
        /// <summary>
        /// 购买方自然人标志：0-否（默认），1-是；仅在开具数电普票(电子)时使用，如受票方（发票抬头）为自然人，并要求能将发票归集在个人票夹中展示，需提供姓名及身份证号（自然人纳税人识别号），此参数传入1；如受票方（发票抬头）为个体工商户，需提供社会统一信用代码或纳税人识别号，此参数传入0
        /// </summary>
        public string? naturalPersonFlag
        {
            set { _naturalpersonflag = value; }
            get { return _naturalpersonflag; }
        }
        /// <summary>
        /// 数电农产品收购发票销售方证件类型，数电农产品收购必传，对应buyerTaxNum字段。103 税务登记证，201 居民身份证，208 外国护照，210 港澳居民来往内地通行证，213 台湾居民来往大陆通行证，215 外国人居留证，219 香港永久性居民身份证，220 台湾身份证，221 澳门特别行政区永久性居民身份证，233 外国人永久居留身份证（外国人永久居留证），299 其他个人证件
        /// </summary>
        public string? certificateType
        {
            set { _certificatetype = value; }
            get { return _certificatetype; }
        }
        /// <summary>
        /// 对购方税号校验（ 0-不校验 1-校验，仅对数电票有效，未传时则取企业配置的值；注：若开启校验，当购方税号未能在电子税局中找到时 则会开票失败）
        /// </summary>
        public string? taxNumVerifyFlag
        {
            set { _taxnumverifyflag = value; }
            get { return _taxnumverifyflag; }
        }
        /// <summary>
        /// 对购方名称校验（ 0-不校验 1-校验，仅对数电普票（电子）有效，未传时则取企业配置的值；若开启校验，当开具非自然人标记的数电普票（电子）时，将限制对于“购买方名称长度小于等于4位”的发票的开具）
        /// </summary>
        public string? naturalPersonVerifyFlag
        {
            set { _naturalpersonverifyflag = value; }
            get { return _naturalpersonverifyflag; }
        }
        /// <summary>
        /// 附加模版名称（数电电票特有字段，附加模版有值时需要添加附加要素信息列表对象，需要先在电子税局平台维护好模版）
        /// </summary>
        public string? additionalElementName
        {
            set { _additionalelementname = value; }
            get { return _additionalelementname; }
        }
        /// <summary>
        /// 设备类型码
        /// </summary>
        public int? clientId
        {
            set { _clientid = value; }
            get { return _clientid; }
        }
        /// <summary>
        /// 设备信息
        /// </summary>
        public string? clientInfo
        {
            set { _clientinfo = value; }
            get { return _clientinfo; }
        }
        /// <summary>
        /// 备注
        /// </summary>
        public string? description
        {
            set { _description = value; }
            get { return _description; }
        }
        /// <summary>
        /// 创建人
        /// </summary>
        [JsonIgnore]
        public int? createUserId
        {
            set { _createuserid = value; }
            get { return _createuserid; }
        }
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? createDate
        {
            set { _createdate = value; }
            get { return _createdate; }
        }
        /// <summary>
        /// 最近更新人
        /// </summary>
        [JsonIgnore]
        public int? updateUserId
        {
            set { _updateuserid = value; }
            get { return _updateuserid; }
        }
        /// <summary>
        /// 最近更新时间
        /// </summary>
        public DateTime? updateDate
        {
            set { _updatedate = value; }
            get { return _updatedate; }
        }
        /// <summary>
        /// 发票明细，支持填写商品明细最大2000行（包含折扣行、被折扣行）
        /// </summary>
        [Navigate(NavigateType.OneToMany, nameof(id), nameof(invoiceApplyDetailDto.parentId))]
        [ForeignKey("parentId")]
        public List<invoiceApplyDetailDto>? Detail { get; set; }
        /// <summary>
        /// 附加要素信息列表（数电电票特有字段，附加要素信息可以有多个，有值时需要附加模版名称也有值）
        /// </summary>
        [Navigate(NavigateType.OneToMany, nameof(id), nameof(invoiceApplyAdditionalElementListDto.parentId))]
        [ForeignKey("parentId")]
        public List<invoiceApplyAdditionalElementListDto>? AdditionalElementList { get; set; }

        /// <summary>
        /// 开具建筑服务特定要素的数电票才需要传（specificFactor 为 3时）；注：数电建筑服务发票 只能有 一条明细 且 规格型号、单位、数量、单价 都不能有值
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyBuildingInfoDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyBuildingInfoDto? BuildingInfo { get; set; }

        /// <summary>
        ///数电发票差额扣除凭证列表，开具数电差额征税-差额开票时，必传
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyDifferenceVoucherInfoListDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyDifferenceVoucherInfoListDto? DifferenceVoucherInfoList { get; set; }

        /// <summary>
        /// 开具货物运输服务特定要素的数电票时才需要填（specificFactor = 4时）最多2000行，至少1行
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyGoodsTransportsDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyGoodsTransportsDto? GoodsTransports { get; set; }

        /// <summary>
        /// 开具不动产经营租赁服务特定要素的数电票才需要传（specificFactor 为 6时）；注：此时 商品只能有 一条明细 且 规格型号、单位都不能有值
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyRealPropertyRentInfoDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyRealPropertyRentInfoDto? RealPropertyRentInfo { get; set; }

        /// <summary>
        ///开具不动产销售特定要素的数电票才需要传（specificFactor 为 5时）；注：此时 商品只能有 一条明细 且 规格型号、单位都不能有值
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyRealPropertySellInfoDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyRealPropertySellInfoDto? RealPropertySellInfo { get; set; }

        /// <summary>
        ///  开具二手车销售统一发票才需要传
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplysecondHandCarInfoDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplysecondHandCarInfoDto? secondHandCarInfo { get; set; }

        /// <summary>
        /// 开具货物运输服务特定要素的数电票时才需要填（specificFactor = 4时）最多2000行，至少1行
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyTravellerTransportDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyTravellerTransportDto? TravellerTransport { get; set; }

        /// <summary>
        ///机动车销售统一发票才需要传
        /// </summary>
        [JsonIgnore]
        [Navigate(NavigateType.OneToOne, nameof(id), nameof(invoiceApplyVehicleInfoDto.parentId))]
        [ForeignKey("parentId")]
        public invoiceApplyVehicleInfoDto? VehicleInfo { get; set; }

        #endregion Model


    }
}
